#include<iostream>
using namespace std;
template <typename T>
T Max(T a, T b)
{
	return a > b ? a : b;
}
const char* Max(const char* a, const char* b)
{
	return (strcmp(a, b) > 0 ? a : b);
}

 char* Max(char* a, char* b)
{
	return (strcmp(a, b) > 0 ? a : b);
}

int main(void)
{
	char a[] = { "good" };
	char b[] = { "star" };
	cout << Max(2, 4) << endl;
	cout << Max("good", "star") << endl;
	cout << Max(a, b) << endl;
}